home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1996 #14
/
Monster Media No. 14 (April 1996) (Monster Media, Inc.).ISO
/
pcboard
/
hb_tb12.zip
/
STB.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1996-01-02
|
14KB
|
700 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 3.2O (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN002
Boolean BOOLEAN003
Boolean BOOLEAN004
Boolean BOOLEAN005
Boolean BOOLEAN006
Boolean BOOLEAN007
Date DATE001
Date DATE002
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
Integer INTEGER013
Integer INTEGER014
Integer INTEGER015
Integer INTEGER016
Integer INTEGER017
Integer INTEGER018
Integer INTEGER019
Integer INTEGER020
Integer INTEGER021
Integer INTEGER022
Integer INTEGER023
Integer INTEGER024
Integer INTEGER025
Real REAL001
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String TSTRING011(9)
String TSTRING012(50)
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
;------------------------------------------------------------------------------
Goto LABEL004
End
INTEGER001 = Abs(0 - 0)
EndFunc
INTEGER002 = Not(And(0, Not(0)))
EndFunc
REAL001 = 0 ^ 0
EndFunc
INTEGER004 = Year(0)
INTEGER003 = 0 - MkDate(INTEGER004, 1, 1) + 1
EndFunc
BOOLEAN002 = 0
STRING002 = ""
:LABEL001
If (BOOLEAN002) Goto LABEL003
FGet 0, STRING002
If (Ferr(0)) Then
BOOLEAN002 = 1
Else
If ((Trim(STRING002, " ") == "") || (Left(STRING002, 1) == ";")) Goto LABEL002
Goto LABEL003
:LABEL002
Goto LABEL001
Endif
:LABEL003
If (BOOLEAN002 == 1) STRING002 = ""
STRING001 = STRING002
EndFunc
INTEGER006 = 400
STRING004 = ""
STRING005 = ReadLine(PCBDat(), 29)
INTEGER005 = FNext()
FOpen INTEGER005, STRING005, 2, 0
FSeek INTEGER005, INTEGER006 * 0, 0
FRead INTEGER005, STRING004, 25
FClose INTEGER005
STRING003 = Trim(STRING004, " ")
EndFunc
:LABEL004
Log "Opened TIME BANK at " + String(Time()), 0
STRING022 = "1.2"
STRING021 = "aAbBtTqQsSwWxXyYhH"
BOOLEAN003 = 0
BOOLEAN007 = EvtTimeAdj()
BOOLEAN004 = 0
UseLMRs 0
GetUser
BOOLEAN005 = U_Expert
STRING006 = PPEPath() + "PROMPTS"
If (Exist(STRING006 + LangExt())) STRING006 = STRING006 + LangExt()
STRING009 = PPEPath() + PPEName() + ".DBF"
STRING010 = PPEPath() + "NAME.NDX"
STRING007 = PPEPath() + PPEName() + ".CFG"
STRING008 = PPEPath() + "STBTWIT.LST"
STRING013 = PPEPath() + "MENU"
STRING014 = PPEPath() + "HELP"
TSTRING011(0) = "NAME,C,40,0"
TSTRING011(1) = "TimeTotal,N,6,0"
TSTRING011(2) = "TimeInDay,N,4,0"
TSTRING011(3) = "TimeOutDay,N,4,0"
TSTRING011(4) = "TimeLastIn,C,8,0"
TSTRING011(5) = "ByteTotal,N,11,0"
TSTRING011(6) = "ByteInDay,N,11,0"
TSTRING011(7) = "ByteOutDay,N,11,0"
TSTRING011(8) = "ByteLastIn,C,8,0"
TSTRING011(9) = "DateLastIn,C,8,0"
STRING015 = U_Name()
If (Exist(STRING006)) Then
For INTEGER018 = 0 To 46
TSTRING012(INTEGER018) = ReadLine(STRING006, INTEGER018 + 1)
Next
Else
Log "Prompt File Missing, continuing with defaults...", 0
TSTRING012(0) = "@X0CSorry @FIRST@, You don't have access to the Time Bank....@X07"
TSTRING012(1) = "@X0CUnable to add record to database. Leave comment to the sysop...@X07"
TSTRING012(2) = "@X0E[@X0FA@X0E]@X07@X0B..Deposit Time@X07"
TSTRING012(3) = "@X0E[@X0FW@X0E]@X07@X0B..Withdraw Time@X07"
TSTRING012(4) = "@X0E[@X0FB@X0E]@X07@X0B..Deposit Bytes@X07"
TSTRING012(5) = "@X0E[@X0FY@X0E]@X07@X0B..Withdraw Bytes@X07"
TSTRING012(6) = "@X0E[@X0FS@X0E]@X07@X0B..Show Your Info@X07"
TSTRING012(7) = "@X0E[@X0FX@X0E]@X07@X0B..Toggle Expert Mode@X07"
TSTRING012(8) = "@X0E[@X0FQ@X0E]@X07@X0B..Quit@X07"
TSTRING012(9) = "@X0BTIME BANK @X0E[@X0FA@X0E,@X0FW@X0E,@X0FB@X0E,@X0FY@X0E,@X0FS@X0E,@X0FH@X0E,@X0FX@X0E,@X0CQ@X0E]@X07"
TSTRING012(10) = "@X0AEnter your Choice@X07_"
TSTRING012(11) = "_"
TSTRING012(12) = "@X0AThank you for using The Time Bank. Enjoy the BBS!@X07"
TSTRING012(13) = "@CLS@@X1E┌───────────────────────────────────────────────────────────────────────────┐@X07"
TSTRING012(14) = "@X1E│ Time Bank User Report for │@X07"
TSTRING012(15) = "@X1E│ @X1C @USER:40C@ @X1E │@X07"
TSTRING012(16) = "@X1E│ │@X07"
TSTRING012(17) = "@X1E│ Current Date And Time:@X1A @OPTEXT:22@ @X1E │@X07"
TSTRING012(18) = "@X1E│ │@X07"
TSTRING012(19) = "@X1E╞═══════════════════════════════╡@X1BTIME@X1E╞══════════════════════════════════════╡@X07"
TSTRING012(20) = "@X1E│ Date of Last Time Action:@X1F @OPTEXT:20C@ @X1E │@X07"
TSTRING012(21) = "@X1E│ Time in Bank/Max. Time Allowed:@X1A @OPTEXT:20R@ @X1E │@X07"
TSTRING012(22) = "@X1E│ Time deposited today/Daily Limit:@X1A @OPTEXT:20R@ @X1E │@X07"
TSTRING012(23) = "@X1E│ Time withdrawn today/Daily Limit:@X1A @OPTEXT:20R@ @X1E │@X07"
TSTRING012(24) = "@X1E│ │@X07"
TSTRING012(25) = "@X1E╞══════════════════════════════╡@X1BBYTES@X1E╞══════════════════════════════════════╡@X07"
TSTRING012(26) = "@X1E│ Date of Last Byte Action:@X1F @OPTEXT:20C@ @X1E │@X07"
TSTRING012(27) = "@X1E│ KBytes in Bank/Max. KByte Allowed:@X1A @OPTEXT:20R@ @X1E │@X07"
TSTRING012(28) = "@X1E│KBytes deposited today/Daily Limit:@X1A @OPTEXT:20R@ @X1E │@X07"
TSTRING012(29) = "@X1E│KBytes withdrawn today/Daily Limit:@X1A @OPTEXT:20R@ @X1E │@X07"
TSTRING012(30) = "@X1E│ │@X07"
TSTRING012(31) = "@X1E├───────────────────────────────────────────────────────────────────────────┤@X07"
TSTRING012(32) = "@X1E│ @X19Copyright 1995 - Herbert Bushong @X1E │@X07"
TSTRING012(33) = "@X1E└───────────────────────────────────────────────────────────────────────────┘@X07"
TSTRING012(34) = "@X0CUnavailable due to upcoming event@X07"
TSTRING012(35) = "@X0EYou currently have @OPTEXT@ minutes saved@X07"
TSTRING012(36) = "@X0EYou currently have @OPTEXT@ bytes saved@X07"
TSTRING012(37) = "@X0AAmount of Time to @OPTEXT@@X07"
TSTRING012(38) = "@X0AAmount of Bytes to @OPTEXT@@X07"
TSTRING012(39) = "deposit"
TSTRING012(40) = "withdraw"
TSTRING012(41) = "@X0FYou can only"
TSTRING012(42) = "@OPTEXT@"
TSTRING012(43) = "minutes@X07"
TSTRING012(44) = "bytes@X07"
TSTRING012(45) = "@X0CUnable to adjust time! Old values restored@X07"
TSTRING012(46) = "@X0CUnavailable. You already have @X0FUnlimited @X0Cbytes!@X07"
Endif
If (Exist(STRING009)) Goto LABEL005
Log "Creating Time Bank Database", 0
INTEGER008 = DNext()
DCreate INTEGER008, STRING009, 0, TSTRING011(BOOLEAN000)
If (DChkStat(INTEGER008) == 60) Then
Log "Unable to Create Database! Aborting", 0
End
Endif
DNew INTEGER008
DPut INTEGER008, "NAME", "STB PPE"
DPut INTEGER008, "TimeTotal", 0
DPut INTEGER008, "TimeInDay", 0
DPut INTEGER008, "TimeOutDay", 0
DPut INTEGER008, "TimeLastIn", "01/01/99"
DPut INTEGER008, "ByteTotal", 0
DPut INTEGER008, "ByteInDay", 0
DPut INTEGER008, "ByteOutDay", 0
DPut INTEGER008, "ByteLastIn", "01/01/99"
DPut INTEGER008, "DateLastIn", "01/01/99"
DAdd INTEGER008
DnCreate INTEGER008, STRING010, "NAME"
If (DChkStat(INTEGER008) <> 0) Log "Unable to create index! Continuing...", 0
DnCloseAll INTEGER008
DCloseAll
:LABEL005
If (Exist(STRING007)) Goto LABEL006
INTEGER020 = 240
INTEGER021 = 60
INTEGER022 = 60
INTEGER023 = 10000000
INTEGER024 = 1000000
INTEGER025 = 10000000
Goto LABEL007
:LABEL006
INTEGER020 = ReadLine(STRING007, 1)
INTEGER021 = ReadLine(STRING007, 2)
INTEGER022 = ReadLine(STRING007, 3)
INTEGER023 = ReadLine(STRING007, 4)
INTEGER024 = ReadLine(STRING007, 5)
INTEGER025 = ReadLine(STRING007, 6)
:LABEL007
If (Exist(STRING008)) Then
INTEGER007 = FNext()
FOpen INTEGER007, STRING008, 0, 0
:LABEL008
If (Ferr(INTEGER007)) Goto LABEL009
FGet INTEGER007, STRING019
If (Upper(STRING019) == STRING015) Then
BOOLEAN003 = 1
Goto LABEL009
Endif
Goto LABEL008
:LABEL009
FClose INTEGER007
If (BOOLEAN003) Then
PrintLn TSTRING012(0)
Log STRING015 + " Found in STBTWIT.LST, aborting", 0
More
End
Endif
Endif
INTEGER008 = DNext()
DOpen INTEGER008, STRING009, 0
DnOpen INTEGER008, STRING010
DSeek INTEGER008, STRING015
Select Case (DChkStat(INTEGER008))
Case 0
INTEGER015 = DRecNo(INTEGER008)
DLockR INTEGER008, INTEGER015
DGet INTEGER008, "TimeTotal", INTEGER009
DGet INTEGER008, "TimeInDay", INTEGER010
DGet INTEGER008, "TimeOutDay", INTEGER011
DGet INTEGER008, "TimeLastIn", STRING016
DATE001 = ToDate(STRING016)
DGet INTEGER008, "ByteTotal", INTEGER012
DGet INTEGER008, "ByteInDay", INTEGER013
DGet INTEGER008, "ByteOutDay", INTEGER014
DGet INTEGER008, "ByteLastIn", STRING017
DATE002 = ToDate(STRING017)
DGet INTEGER008, "DateLastIn", STRING018
If (ToDate(STRING018) < Date()) Then
INTEGER013 = 0
INTEGER014 = 0
INTEGER010 = 0
INTEGER011 = 0
STRING018 = String(Date())
DPut INTEGER008, "ByteInDay", INTEGER013
DPut INTEGER008, "ByteOutDay", INTEGER014
DPut INTEGER008, "TimeInDay", INTEGER010
DPut INTEGER008, "TimeOutDay", INTEGER011
DPut INTEGER008, "DateLastIn", STRING018
Endif
BOOLEAN004 = 1
INTEGER009 = 0
INTEGER010 = 0
INTEGER011 = 0
STRING016 = String(Date())
DATE001 = Date()
INTEGER012 = 0
INTEGER013 = 0
INTEGER014 = 0
STRING017 = String(Date())
DATE002 = Date()
STRING018 = String(Date())
DNew INTEGER008
DPut INTEGER008, "NAME", STRING015
DPut INTEGER008, "TimeTotal", INTEGER009
DPut INTEGER008, "TimeInDay", INTEGER010
DPut INTEGER008, "TimeOutDay", INTEGER011
DPut INTEGER008, "TimeLastIn", STRING016
DPut INTEGER008, "ByteTotal", INTEGER012
DPut INTEGER008, "ByteInDay", INTEGER013
DPut INTEGER008, "ByteOutDay", INTEGER014
DPut INTEGER008, "ByteLastIn", STRING017
DPut INTEGER008, "DateLastIn", STRING018
DAdd INTEGER008
DSeek INTEGER008, STRING015
Case 0
INTEGER015 = DRecNo(INTEGER008)
DLockR INTEGER008, INTEGER015
Case Else
PrintLn TSTRING012(1)
Log "Unable to add record, aborting...", 0
More
End
End Select
If (BOOLEAN004) Then
DispFile PPEPath() + "STBWELC", 2 + 1 + 4
Newline
Wait
Endif
:LABEL010
If (BOOLEAN005) Then
Print TSTRING012(9)
STRING019 = TSTRING012(11)
Else
STRING019 = TSTRING012(10)
If (Exist(STRING013)) Goto LABEL011
Cls
For INTEGER018 = 2 To 8
PrintLn TSTRING012(INTEGER018)
Next
Newline
Goto LABEL012
:LABEL011
DispFile STRING013, 2 + 1 + 4
Newline
Endif
:LABEL012
STRING020 = ""
InputStr STRING019, STRING020, 15, 1, STRING021, 4 + 2 + 8 + 256
Select Case (STRING020)
Case "Q"
DUnlock INTEGER008
DnCloseAll INTEGER008
DCloseAll
PutUser
PrintLn TSTRING012(12)
Delay 26
Log "Exited TIME BANK at " + String(Time()), 0
End
Case "H"
DispFile STRING014, 2 + 1 + 4
Wait
Case "X"
U_Expert = !U_Expert
BOOLEAN005 = U_Expert
Case "A"
OpText String(INTEGER009)
PrintLn TSTRING012(35)
OpText TSTRING012(39)
INTEGER019 = 0
InputInt TSTRING012(37), INTEGER019, 15
Newline
INTEGER019 = Abs(INTEGER019)
BOOLEAN006 = 0
If (INTEGER019 + INTEGER010 > INTEGER021) Then
BOOLEAN006 = 1
Endif
If (INTEGER020 < INTEGER019 + INTEGER009) Then
BOOLEAN006 = 1
Endif
If (MinLeft() - INTEGER019 < 3) Then
BOOLEAN006 = 1
Endif
If (BOOLEAN006) Then
Print TSTRING012(41) + " "
OpText TSTRING012(39)
If (MinLeft() < INTEGER021 - INTEGER010) Then
PrintLn TSTRING012(42) + " " + String(MinLeft() - 3) + " " + TSTRING012(43)
Goto LABEL013
Endif
PrintLn TSTRING012(42) + " " + String(INTEGER021 - INTEGER010) + " " + TSTRING012(43)
:LABEL013
Wait
Goto LABEL010
Endif
AdjTime -INTEGER019
INTEGER009 = INTEGER009 + INTEGER019
INTEGER010 = INTEGER010 + INTEGER019
DATE001 = Date()
STRING016 = String(DATE001)
DPut INTEGER008, "TimeTotal", INTEGER009
DPut INTEGER008, "TimeInDay", INTEGER010
DPut INTEGER008, "TimeLastIn", STRING016
Case "W"
If (BOOLEAN007) Then
PrintLn TSTRING012(34)
More
Goto LABEL010
Endif
OpText String(INTEGER009)
PrintLn TSTRING012(35)
OpText TSTRING012(40)
INTEGER019 = 0
InputInt TSTRING012(37), INTEGER019, 15
Newline
INTEGER019 = Abs(INTEGER019)
BOOLEAN006 = 0
If (INTEGER019 + INTEGER011 > INTEGER022) BOOLEAN006 = 1
If (INTEGER009 < INTEGER019) BOOLEAN006 = 1
If (BOOLEAN006) Then
Print TSTRING012(41) + " "
OpText TSTRING012(40)
PrintLn TSTRING012(42) + " " + String(INTEGER009) + " " + TSTRING012(43)
Wait
Goto LABEL010
Endif
INTEGER016 = MinLeft()
AdjTime INTEGER019
If (INTEGER016 == MinLeft()) Then
PrintLn TSTRING012(45)
Wait
Goto LABEL010
Endif
INTEGER009 = INTEGER009 - INTEGER019
INTEGER011 = INTEGER011 + INTEGER019
DATE001 = Date()
STRING016 = String(DATE001)
DPut INTEGER008, "TimeTotal", INTEGER009
DPut INTEGER008, "TimeOutDay", INTEGER011
DPut INTEGER008, "TimeLastIn", STRING016
Case "B"
If (Upper(PCBMac("@BYTELIMIT@")) == "UNLIMITED") Then
Newline
PrintLn TSTRING012(46)
Wait
Goto LABEL010
Endif
OpText String(INTEGER012)
PrintLn TSTRING012(36)
OpText TSTRING012(39)
INTEGER019 = 0
InputInt TSTRING012(38), INTEGER019, 15
Newline
INTEGER019 = Abs(INTEGER019)
INTEGER017 = PCBMac("@BYTESLEFT@")
BOOLEAN006 = 0
If (INTEGER019 + INTEGER013 > INTEGER024) BOOLEAN006 = 1
If (INTEGER023 < INTEGER012 + INTEGER019) BOOLEAN006 = 1
If (INTEGER017 < INTEGER019) BOOLEAN006 = 1
If (BOOLEAN006) Then
Print TSTRING012(41) + " "
OpText TSTRING012(39)
PrintLn TSTRING012(42) + " " + PCBMac("@BYTESLEFT@") + " " + TSTRING012(44)
Wait
Goto LABEL010
Endif
AdjBytes -INTEGER019
INTEGER012 = INTEGER012 - INTEGER019
INTEGER014 = INTEGER014 + INTEGER019
DATE002 = Date()
STRING017 = String(DATE002)
DPut INTEGER008, "ByteTotal", INTEGER012
DPut INTEGER008, "ByteOutDay", INTEGER014
DPut INTEGER008, "ByteLastIn", STRING017
Case "Y"
If (Upper(PCBMac("@BYTELIMIT@")) == "UNLIMITED") Then
Newline
PrintLn TSTRING012(46)
Wait
Goto LABEL010
Endif
OpText String(INTEGER012)
PrintLn TSTRING012(36)
OpText TSTRING012(40)
INTEGER019 = 0
InputInt TSTRING012(38), INTEGER019, 15
Newline
INTEGER019 = Abs(INTEGER019)
BOOLEAN006 = 0
If (INTEGER019 + INTEGER014 > INTEGER025) BOOLEAN006 = 1
If (INTEGER012 < INTEGER019) Then
BOOLEAN006 = 1
Print TSTRING012(41) + " "
OpText TSTRING012(40)
PrintLn TSTRING012(42) + " " + String(INTEGER012) + " " + TSTRING012(44)
Wait
Goto LABEL010
Endif
AdjBytes -INTEGER019
INTEGER012 = INTEGER012 - INTEGER019
INTEGER014 = INTEGER014 + INTEGER019
DATE002 = Date()
STRING017 = String(DATE002)
DPut INTEGER008, "ByteTotal", INTEGER012
DPut INTEGER008, "ByteOutDay", INTEGER014
DPut INTEGER008, "ByteLastIn", STRING017
Case "S"
For INTEGER018 = 13 To 33
If (((((INTEGER018 >= 12) && (INTEGER018 <= 16)) || ((INTEGER018 >= 18) && (INTEGER018 <= 19))) || ((INTEGER018 >= 24) && (INTEGER018 <= 25))) || ((INTEGER018 >= 30) && (INTEGER018 <= 33))) Then
OpText ""
Goto LABEL014
Endif
If (INTEGER018 == 17) Then
OpText String(Date()) + " " + Left(String(Time()), 5)
Goto LABEL014
Endif
If (INTEGER018 == 20) Then
OpText STRING016
Goto LABEL014
Endif
If (INTEGER018 == 21) Then
OpText Right(String(INTEGER009), 6) + " / " + Right(String(INTEGER020), 6) + " min."
Goto LABEL014
Endif
If (INTEGER018 == 22) Then
OpText Right(String(INTEGER010), 6) + " / " + Right(String(INTEGER021), 6) + " min."
Goto LABEL014
Endif
If (INTEGER018 == 23) Then
OpText Right(String(INTEGER011), 6) + " / " + Right(String(INTEGER022), 6) + " min."
Goto LABEL014
Endif
If (INTEGER018 == 26) Then
OpText STRING017
Goto LABEL014
Endif
If (INTEGER018 == 27) Then
OpText Right(String(INTEGER012 / 1000), 7) + "/" + Right(String(INTEGER023 / 1000), 7) + " KB."
Goto LABEL014
Endif
If (INTEGER018 == 28) Then
OpText Right(String(INTEGER013 / 1000), 7) + "/" + Right(String(INTEGER024 / 1000), 7) + " KB."
Goto LABEL014
Endif
If (INTEGER018 == 29) Then
OpText Right(String(INTEGER014 / 1000), 7) + "/" + Right(String(INTEGER025 / 1000), 7) + " KB."
Endif
:LABEL014
PrintLn TSTRING012(INTEGER018)
Next
Wait
End Select
Goto LABEL010
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 6 End
; 1 Cls
; 3 More
; 10 Wait
; 91 Goto
; 176 Let
; 5 Print
; 18 PrintLn
; 59 If
; 3 DispFile
; 2 FOpen
; 2 FClose
; 2 FGet
; 1 GetUser
; 1 PutUser
; 2 AdjTime
; 8 Log
; 1 InputStr
; 4 InputInt
; 1 Delay
; 9 Newline
; 22 OpText
; 1 FSeek
; 1 FRead
; 2 AdjBytes
; 6 EndFunc
; 1 DCreate
; 1 DOpen
; 2 DCloseAll
; 2 DLockR
; 1 DUnlock
; 1 DnCreate
; 1 DnOpen
; 2 DnCloseAll
; 2 DNew
; 2 DAdd
; 2 DSeek
; 9 DGet
; 37 DPut
; 1 UseLMRs
;
;
; ■ Functions used :
;
; 3 -
; 1 ^
; 1 *
; 6 /
; 84 +
; 9 -
; 27 ==
; 1 <>
; 11 <
; 7 <=
; 4 >
; 10 >=
; 50 !
; 10 &&
; 7 ||
; 3 Upper()
; 2 Left()
; 12 Right()
; 2 Ferr()
; 2 Trim()
; 12 Date()
; 3 Time()
; 1 U_Name()
; 1 Year()
; 32 String()
; 1 PCBDat()
; 8 PPEPath()
; 8 ReadLine()
; 5 MinLeft()
; 6 Exist()
; 2 LangExt()
; 1 And()
; 2 Not()
; 5 Abs()
; 2 PPEName()
; 1 MkDate()
; 3 ToDate()
; 1 EvtTimeAdj()
; 4 PCBMac()
; 2 DRecNo()
; 2 FNext()
; 2 DNext()
; 4 DChkStat()
;
;------------------------------------------------------------------------------
;
; Analysis flags : WAad
;
; W - Write user ■ 5
; Program writes a user record. Although this may be normal for a
; User Editor, it may also be a way to modify an account level.
; ■ Search for : PUTUSER
;
; A - Adjust online time remaining ■ 5
; Program modify the amount of online time remaining, this may
; be a way to bypass time limits
; ■ Search for : ADJTIME
;
; a - Adjust ratio ■ 4
; User's ratio is adjusted by changing the amount of files/bytes
; uploaded. This may be normal for a user editor.
; ■ Search for : ADJBYTES, ADJDBYTES, ADJTBYTES, ADJTFILES
;
; d - Access PCBOARD.DAT ■ 2
; Program gets the full pathname to PCBOARD.DAT, this may be usefull
; for many PPE so they can find various informations on the system
; (system paths, max number of lines in messages, ...) but it may also
; be a way to gather vital informations.
; ■ Search for : PCBDAT()
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 3 For/Next
; 0 While/EndWhile
; 31 If/Then or If/Then/Else
; 2 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------